This invention relates to a data processing device that incorporates an information converter, such as a microprocessor with a built-in address converter buffer and more particularly to a technique that can be effectively applied for debugging software in a data processing system equipped with such a microprocessor.
As application programs and control programs improve the level of performance and have more versatile functions, the data processing systems that execute such programs are substantially increasing their address space. In data processing systems that perform large-scale multitasks, it is desired that programs and data be protected against illegal accesses which could destroy them. For this purpose, a virtual memory access method is used on such data processing systems.
The virtual memory access method uses an address converter--a memory management unit equipped with an address converting buffer--which defines the correspondence between physical addresses and logical addresses to correlate the virtual memory space, which is represented by logical addresses according to architecture, with the real memory space that exits as hardware and is referred to by physical addresses.
If such an address converter is incorporated in a microprocessor, the microprocessor produces a physical address to the outside world and does not directly output a logical address. Therefore, in debugging software of the data processing system that uses such a microprocessor, the logical addresses necessary for such program debugging cannot be monitored outside the microprocessor.
For debugging software in the abovementioned data processing system, a method is available which is introduced by "Nikkei Electronics" (No. 414), page 101 and 102, published from Nikkei McGraw-Hill on Feb. 9, 1987. This method is briefly explained below.
In addition to a microprocessor as a real chip, the term real chip refers to the microprocessor being used in the system during normal operations, that has an address converter and which outputs a physical address converted by the address convertor, another microprocessor is prepared which is dedicated only for evaluation and which can output to external circuits a logical address before being converted. These two microprocessors are parallelly operated performing emulation while at the same time accumulating as trace information the logical addresses together with various kinds of bus information and control information.
However, the above method has the following problems. That is, it needs a dedicated microprocessor for evaluation to perform debugging of software of the data processing system, which has a microprocessor with a built-in address converter. Moreover, since the dedicated evaluation microprocessor must be run in parallel with the real chip microprocessor which outputs physical addresses, the emulator circuit configuration and its control actions become complicated.